/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sv.com.intesal.seguridad.controlador;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import sv.com.intesal.clases.Mensaje;
import sv.com.intesal.conexion.cConexion;
import sv.com.intesal.seguridad.bean.TipoParametro;
import sv.com.intesal.seguridad.sql.SQLTipoParametro;

/**
 *
 * @author ejerez
 */
public class TipoParametroControlador {

    public List<TipoParametro> fillGrid() throws Exception {
        List<TipoParametro> lista = new ArrayList<TipoParametro>();
        try {
            ResultSet rs = cConexion.conectar().prepareStatement(SQLTipoParametro.getTipoParamtero).executeQuery();

            while (rs.next()) {
                TipoParametro tp = new TipoParametro();
                tp.setCodigo_tp(rs.getInt("codigo_tp"));
                tp.setNombre_tp(rs.getString("nombre_tp"));
                tp.setDescripcion_tp(rs.getString("descripcion_tp"));
                lista.add(tp);
            }

            rs.close();
            return lista;
        } catch (Exception e) {
            throw new Exception(e);
        }
    }

    public List<TipoParametro> getComboBox() throws Exception {
        try {
            return this.fillGrid();
        } catch (Exception e) {
            throw new Exception(e);
        }
    }

    public void mantenimiento(TipoParametro tp) throws Exception {

        try {
            PreparedStatement ps = null;
            if (tp.getCodigo_tp() == null) {
                ps = cConexion.conectar().prepareCall(SQLTipoParametro.insert);
            } else {
                ps = cConexion.conectar().prepareCall(SQLTipoParametro.update);
                ps.setInt(3, tp.getCodigo_tp());
            }
            ps.setString(1, tp.getNombre_tp());
            ps.setString(2, tp.getDescripcion_tp());
            ps.executeUpdate();
            ps.close();

            Mensaje m = new Mensaje();
            if (tp.getCodigo_tp() == null) {
                m.messageInfo(m.getIinformation());
            } else {
                m.messageInfo(m.getImodificada());
            }
        } catch (Exception e) {
            throw new Exception(e);
        }
    }
}
